Controller for electric motor

ABSTRACT

A feedback amount calculation unit uses a deviation of a current from its command value or a deviation of an air-gap flux from its command value to calculate a feedback amount. A voltage error calculation unit calculates a variation range of a voltage error between a voltage value based on a voltage equation of the electric motor and a voltage command. The presence or absence of step-out of the electric motor is determined by comparison between the variation range of the voltage error and the feedback amount.

TECHNICAL FIELD

The present invention relates to a technique for controlling an electricmotor, and particularly to a technique for determining the occurrence ofan abnormality in a synchronous motor.

BACKGROUND ART

Various techniques for detecting step-out of an electric motor have beenconventionally developed. Among the documents exemplifying suchtechniques are Japanese Patent Application Laid-Open No. 2010-051151,Japanese Patent Application Laid-Open No. 2010-252503, and JapanesePatent Application Laid-Open No. 2008-92787.

Japanese Patent Application Laid-Open No. 2010-051151 discloses atechnique for determining step-out from a deviation of a d-axis currentand a q-axis command voltage.

Japanese Patent Application Laid-Open No. 2010-252503 discloses atechnique for detecting step-out by comparison between a model voltageand a voltage command.

Japanese Patent Application Laid-Open No. 2008-92787 discloses atechnique for determining step-out if a magnetic flux obtained from acurrent and a rotation speed command is not greater than a threshold.

SUMMARY OF INVENTION Problem to be Solved by the Invention

The conventional techniques described above do not reflect variations inthe specifications of electric motors, power modules that drive theelectric motors, and detectors. Thus, a threshold for determining theoccurrence of step-out needs to be decided experimentally. Such decisionof a threshold causes a problem of increased man-hours in development.

This application therefore has an object to provide a technique fordetermining the presence or absence of an abnormality (e.g., step-out)of an electric motor.

Means to Solve the Problem

A controller for an electric motor according to the present inventioncontrols a synchronous motor. The controller includes an electric motordrive unit (2, 104) that applies a voltage (v_(u), v_(v), v_(N)) basedon a voltage command ([v_(δγ)*]) to the synchronous motor, a feedbackamount calculation unit (1022) that decides a feedback amount based on adeviation of a current ([i_(δγc)]) flowing through the synchronous motorfrom a command value ([i_(δγ)*]) of the current or a deviation of anair-gap flux ([λ_(δγc)]) in the synchronous motor from a command value([λ_(δγ)*]) of the air-gap flux, a voltage command generation unit(1024) that generates the voltage command on the basis of the feedbackamount, a voltage error calculation unit (1025) that calculates a rangein which an error ([Δv_(δγ)*]) between a voltage value based on avoltage equation of the synchronous motor and the voltage commandvaries, and a determination unit (109) that determines the occurrence ofan abnormality in the synchronous motor when the feedback amountdeviates from the range in which the error varies.

For example, the error ([Δv_(δγ)*]) is set on the basis of a variationrange decided by at least one of the current ([i_(δγc)]), the voltagecommand ([v_(δγ)*]), a manufacturing tolerance or a range of guaranteeof an operating temperature of the synchronous motor (3), amanufacturing tolerance or a range of guarantee of an operatingtemperature of the electric motor drive unit, a manufacturing toleranceor a range of guarantee of an operating temperature of a detector thatdetects the current or the voltage, or a rotation angle velocity (ω₁) ofthe synchronous motor.

For example, the range in which the error ([Δv_(δγ)]) varies is set onthe basis of a variation range decided by at least one of a range inwhich an error (e_(iI)[I][i_(δγc)]) that is parallel in phase with thecurrent ([i_(δγc)]) varies, a range in which an error(e_(iJ)[J][i_(δγc)]) that is orthogonal in phase to the current varies,a range in which an error (e_(Λ)[sin φ_(c) cos φ_(c)]^(t)) that isorthogonal in phase to a field flux ([Λ0]) of the synchronous motor (3)varies, or a range in which an error (e_(v)[v_(δγ)*]) that is parallelin phase with the voltage command ([v_(δγ)*]) varies.

For example, the range in which the error ([Δv_(δγ)*]) varies is set bya maximum value and/or a minimum value of the error in a combination ofan upper limit and a lower limit of the variation range, the current([i_(δγc)]), and the voltage command ([v_(δγ)*]).

For example, the range in which the error ([Δv_(δγ)*]) varies is furtherset also on the basis of one term of the voltage equation. Thecontroller further includes a feedforward amount calculation unit (1023)that decides a feedforward amount ([F]) based on a term of the voltageequation except for the one term. The voltage command generation unit(1024) further generates the voltage command ([v_(δγ)*]) also on thebasis of the feedforward amount.

For example, the controller further includes a feedforward amountcalculation unit (1023) that decides a feedforward amount ([F]) based onthe voltage equation. The voltage command generation unit (1024) furthergenerates the voltage command ([v_(δγ)*]) also on the basis of thefeedforward amount ([F]).

Effects of the Invention

The controller for an electric motor according to the present inventiondetermines the occurrence of an abnormality in the electric motor whenthe feedback amount deviates from a predetermined range.

These and other objects, features, aspects and advantages of the presentinvention will become more apparent from the following detaileddescription of the present invention when taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a vector diagram illustrating the relationship between anair-gap flux and a field flux in a synchronous motor;

FIG. 2 is a block diagram illustrating a configuration of an electricmotor controller according to a first embodiment and its peripheraldevices;

FIG. 3 is a block diagram illustrating a configuration of a voltagecommand calculation unit in the first embodiment;

FIG. 4 is a block diagram illustrating a configuration of a voltagecommand calculation unit in a second embodiment; and

FIG. 5 is a block diagram illustrating a configuration of a voltagecommand calculation unit in a third embodiment.

DESCRIPTION OF EMBODIMENTS Basic Concept of the Invention

The basic concept of the present invention will be described beforedetailed description of embodiments. Needless to say, this basic conceptis also included in the present invention.

FIG. 1 is a vector diagram illustrating the relationship between anair-gap flux [λ] (unless otherwise specified, a symbol [ ] represents avector quantity; the same holds true for the following) in a synchronousmotor (hereinafter, merely referred to as an “electric motor”; althoughsome special synchronous motors, such as switched reluctance motors,have no magnetic field, the synchronous motor herein refers to asynchronous motor having a magnetic field) and a field flux [Λ0] in theelectric motor. For example, in the case where an electric motor has apermanent magnet, the field flux [Λ0] is generated by the permanentmagnet, or in the case where an electric motor has a field winding, thefield flux [Λ0] is generated by a current flowing through the fieldwinding.

The d-q rotating coordinate system is introduced as a rotatingcoordinate system synchronized with the rotation of an electric motor.Herein, the d-axis is set in phase with the field flux [Λ0], and thephase of the q-axis leads with respect to the d-axis by 90 degrees inthe direction toward which a rotation is intended to be made by controlof the electric motor (hereinafter, merely referred to as a “directionof rotation”).

Additionally, the δ-γ rotating coordinate system and the δc-γc rotatingcoordinate system are introduced as rotating coordinate systems. Thephases of the δ-axis and the γ-axis lead respectively with respect tothe d-axis and the q-axis toward the direction of rotation of theelectric motor by a phase angle φ. The phases of the δc-axis and theγc-axis lead respectively with respect to the d-axis and the q-axistoward the direction of rotation of the electric moto by a phase angleφ_(c). Hereinafter, for the sake of description, the phase angle φ ofthe δ-axis to the d-axis is referred to as an actual phase angle φ, andthe phase angle φ_(c) of the δc-axis to the q-axis is referred to as anestimated phase angle φ_(c).

For example, in the method for controlling an electric motor, which isknown as “primary magnetic flux control”, the δ-axis is set in phasewith the air-gap flux [λ].

As is well known, the air-gap flux [λ] is decided by the voltage andcurrent supplied to an electric motor (more specifically, an armaturewinding of an armature included in the electric motor), the deviceconstants of the electric motor (e.g., an inductance, a resistancecomponent of the armature winding, and a field flux), and the rotationvelocity of the electric motor. The estimated value [λ^] of the air-gapflux [λ] is thus obtained from the actual values (or command values orestimated values) of the voltage and current, device constants, androtation velocity described above. The controller that controls theelectric motor thus performs control such that the estimated value [λ^]is equal to a command value [λ*] of the air-gap flux [λ]. In the“primary magnetic flux control” described above, the γ-axis component ofthe command value [λ*] is zero.

When the δc-γc rotating coordinate system is employed in such control,the estimated phase angle φ_(c) coincides with the actual phase angle φ,thus enabling appropriate control of the rotation of the electric motor.This is because if the device constants, the rotation velocity, and thevoltage and current supplied to the electric motor are completelygrasped, the air-gap flux [λ] coincides with the command value [λ*] byperforming control such that the estimated value [λ^] obtained on thebasis of these factors is equal to the command value [λ*].

The estimated phase angle φ_(c), however, may differ from the actualphase angle φ due to, for example, a variation in load or disturbance.Such a difference is normally corrected by feedback control. A feedbackamount used for feedback control (herein, merely referred to as a“feedback amount”), which is ideally zero, actually falls within anarrow range. If the difference between the estimated phase angle φ_(c)and the actual phase angle φ is not eliminated even by feedback control,however, a feedback amount will increase.

The present invention focuses attention on this point, and ischaracterized by determining the occurrence of an abnormality in anelectric motor by a feedback amount deviating from a predeterminedrange.

First Embodiment

FIG. 2 is a block diagram illustrating the configuration of an electricmotor controller 1 according to this embodiment and its peripheraldevices on the basis of the concept above.

An electric motor 3 is a three-phase electric motor and includes anarmature (not shown) and a rotor that is a field. As a technical commonsense, the armature has an armature winding, and the rotor rotatesrelative to the armature. Description will be made on a case where thefield includes, for example, a magnet that generates a field flux.

A voltage supply source 2 includes, for example, a voltage control typeinverter and a control unit therefor and applies a three-phase voltagev_(u), v_(v), v_(w) based on a three-phase voltage command[v_(x)*]=[v_(u)*v_(v)*v_(w)*]^(t) (the superscript “t” after a bracketrepresents the transposition of a matrix; the same holds true for thefollowing) to the electric motor 3. This causes a three-phase current[i_(x)]=[i_(u) i_(v) i_(w)]^(t) to flow through the electric motor 3.Note that the components of the voltage command [v*] and the three-phasecurrent [i_(x)] are described, for example, in order of a U-phasecomponent, a V-phase component, and a W-phase component.

The electric motor controller 1 is a device that controls the air-gapflux [λ] and the rotation velocity (in the example below, the rotationangle velocity) on the electric motor 3. The air-gap flux [λ] is alsoreferred to as a primary magnetic flux and is a synthesis of the fieldflux and the magnetic flux of armature reaction generated by an armaturecurrent (which is a three-phase current [i_(x)] as well) flowing throughthe armature.

The electric motor controller 1 includes coordinate transformation units101 and 104, a voltage command calculation unit 102, a subtracter 105,an integrator 106, a high pass filter 107, a constant multiplier unit108, and a determination unit 109.

The coordinate transformation unit 101 transforms the three-phasecurrent [i_(x)] into a current [i_(δγc)]=[i_(δc) i_(γc)]^(t) in theδc-γc rotating coordinate system. The three-phase current [i_(x)] can bemeasured by a known technique, for example, with a detector (not shown).

The coordinate transformation unit 104 transforms the voltage command[v_(δγ)*] in the δc-γc rotating coordinate system into a voltage command[v_(x)*]. In these transformations, a rotation angle θ in the δc-γcrotating coordinate system to the fixed coordinate system (e.g., the UVWfixed coordinate system) on the electric motor 3 is used. Thesetransformations are achieved by a known technique, and thus, detaileddescription thereof will be omitted here.

The voltage command [v_(x)*] and the three-phase current [i_(x)] may berepresented in a so-called αβ fixed coordinate system (for example, thea-axis is set in phase with the U-phase) or any other rotatingcoordinate system instead of the three-phase UVW fixed coordinatesystem. The coordinate transformation units 101 and 104 performtransformations corresponding to these coordinate systems. Thecoordinate system employed for the voltage command [v*] is decided by acoordinate system on the basis of which the voltage supply source 2operates. The voltage supply source 2 and the coordinate transformationunit 104 can be collectively regarded as an electric motor drive unitthat applies a voltage v_(u), v_(v), v_(w) based on the voltage command[v_(δγ)*] to the electric motor 3.

The integrator 106 calculates a phase angle θ on the basis of a rotationangle velocity ω₁. The rotation angle velocity ω₁ is obtained as anoutput of the subtracter 105. If the primary magnetic flux control hasbeen performed, the subtracter 105 subtracts a value from a commandvalue ω* of the rotation angle velocity, the value being obtained bymultiplying a predetermined value Km, in the constant multiplier unit108, by a DC component removed a γc-axis component i_(δc) of the current[i_(δγc)] in the high pass filter 107. This yields a rotation anglevelocity ω₁. When the air-gap flux [λ] is controlled appropriately,φ_(c)=φ as described above, thus resulting in ω₁=ω*.

The voltage command calculation unit 102 outputs the voltage command[v_(δγ)*], as well as a feedback amount [B] and a voltage error[Δv_(δγ)*] that serves as a basis of the predetermined range describedin “Basic Concept”. The determination unit 109 compares the feedbackamount [B] and the threshold resulting from the voltage error [Δv_(δγ)*]and outputs a determination signal Z indicating whether an abnormality,for example, step-out has occurred in the electric motor or not.

FIG. 3 is a block diagram illustrating the configuration of the voltagecommand calculation unit 102. The voltage command calculation unit 102includes a magnetic flux calculation unit 1021, a feedback amountcalculation unit 1022, a feedforward amount calculation unit 1023, avoltage command generation unit 1024, a voltage error calculation unit1025, and a voltage command output regulation unit 1026.

The magnetic flux calculation unit 1021 receives the current [i_(δγc)],the rotation angle velocity ω₁, and the voltage command [v_(δγ)*] andoutputs an estimated phase angle φ_(c) and an air-gap flux [λ_(δγc)].The estimated value [λ^] descried above may be employed as the air-gapflux [λ_(δγc)]. Specifically, the estimated phase angle φ_(c) and theair-gap flux [λ_(δγc)] can be obtained as follows.

In general, when a d-axis component L_(d) and a q-axis component L_(q)of the inductance of the armature winding of the electric motor 3, aδ-axis component i_(δ) and a γ-axis component i_(γ) of the currentflowing through the electric motor 3, a δ-axis component v_(δ) and aγ-axis component v_(γ) of the voltage applied to the electric motor 3,an actual phase angle φ, an absolute value Λ₀ of a field flux, aresistance component R of the armature winding of the electric motor 3,a rotation angle velocity ω₁, and a differential operator p areintroduced, the following voltage equation (1) holds, where [I], [J],[C], and symbols [ ] surrounding these elements represent matrices.

$\begin{matrix}\left. \begin{matrix}{\begin{bmatrix}v_{\delta} \\v_{\gamma}\end{bmatrix} = {{R\begin{bmatrix}i_{\delta} \\i_{\gamma}\end{bmatrix}} + {\left( {{p\lbrack I\rbrack} + {\omega_{1}\lbrack J\rbrack}} \right)\begin{bmatrix}\lambda_{\delta} \\\lambda_{\gamma}\end{bmatrix}}}} \\{{\lbrack I\rbrack = \begin{bmatrix}1 & 0 \\0 & 1\end{bmatrix}},{\lbrack J\rbrack = \begin{bmatrix}0 & {- 1} \\1 & 0\end{bmatrix}},{\begin{bmatrix}\lambda_{\delta} \\\lambda_{\gamma}\end{bmatrix} = {{\left( {{L_{0}\lbrack I\rbrack} + {L_{1}\lbrack C\rbrack}} \right)\begin{bmatrix}i_{\delta} \\i_{\gamma}\end{bmatrix}} +}}} \\{\bigwedge_{0}\begin{bmatrix}{\cos\;\phi} \\{{- \sin}\;\phi}\end{bmatrix}} \\{{L_{0} = \frac{L_{d} + L_{q}}{2}},{L_{1} = \frac{L_{d} - L_{q}}{2}},{\lbrack C\rbrack = \begin{bmatrix}{\cos\left( {2\phi} \right)} & {- {\sin\left( {2\phi} \right)}} \\{- {\sin\left( {2\phi} \right)}} & {- {\cos\left( {2\phi} \right)}}\end{bmatrix}}}\end{matrix} \right) & (1)\end{matrix}$

Similarly, a setup value L_(dc) of the d-axis component and a setupvalue L_(qc) of a q-axis component of the inductance of the armaturewinding, a δc-axis component i_(δc) and a γc-axis component i_(γc) ofthe current flowing through the electric motor 3, a δc-axis componentγ_(δc) and a γc-axis component v_(γc) of the voltage applied to theelectric motor 3, an estimated phase angle φ_(c), a setup value Λ_(0c)of an absolute value of the field flux, a setup value R_(c) of aresistance component of the armature winding of the electric motor 3,and the rotation angle velocity ω₁ are introduced, and accordingly, thefollowing voltage equation (2) holds in the δc-γc rotating coordinatesystem.

$\begin{matrix}\left. \begin{matrix}{\left\lbrack \lambda_{{\delta\gamma}\; c} \right\rbrack = {\begin{bmatrix}\lambda_{\delta\; c} \\\lambda_{\gamma\; c}\end{bmatrix} = {{\left( {{L_{0c}\begin{bmatrix}1 & 0 \\0 & 1\end{bmatrix}} + {L_{1c}\begin{bmatrix}{\cos\left( {2\phi_{c}} \right)} & {- {\sin\left( {2\phi_{c}} \right)}} \\{- {\sin\left( {2\phi_{c}} \right)}} & {- {\cos\left( {2\phi_{c}} \right)}}\end{bmatrix}}} \right)\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack} +}}} \\{\bigwedge_{0c}\begin{bmatrix}{\cos\;\phi_{c}} \\{{- \sin}\;\phi_{c}}\end{bmatrix}} \\{{L_{0c} = \frac{L_{dc} + L_{qc}}{2}},{L_{1c} = \frac{L_{dc} - L_{qc}}{2}}} \\{\phi_{c} = {\tan^{- 1}\frac{v_{\delta\; c} - {R_{c}i_{\delta\; c}} + {\omega_{1}L_{qc}i_{\gamma_{c}}}}{v_{\gamma\; c} - {R_{c}i_{\lambda\; c}} + {\omega_{1}L_{qc}i_{\gamma_{c}}}}}}\end{matrix} \right) & (2)\end{matrix}$

The δc-axis component v_(δc) and the γc-axis component v_(γc) of thevoltage are not actually measured, and thus, the magnetic fluxcalculation unit 1021 employs a voltage command[v_(δγ*)]=[v_(δ)*v_(γ)*]^(t) in place of these components to obtain theestimated phase angle φ_(c) and the air-gap flux [λ_(δγc)]. The setupvalues L_(dc), L_(qc), R_(c), and Λ_(0c) can be stored in the magneticflux calculation unit 1021 in advance.

In the steady state, the result of the operation by the differentialoperator p is zero, and thus, the voltage equation in the steady stateis introduced as the following formula (3) from the formula (1).

$\begin{matrix}{\begin{bmatrix}v_{\delta} \\v_{\gamma}\end{bmatrix} = {{R\begin{bmatrix}i_{\delta} \\i_{\gamma}\end{bmatrix}} + {{\omega_{1}\begin{bmatrix}0 & {- 1} \\1 & 0\end{bmatrix}}\begin{bmatrix}\lambda_{\delta} \\\lambda_{\gamma}\end{bmatrix}}}} & (3)\end{matrix}$

To correct the errors due to the differences between the setup valuesL_(dc), L_(qc), R_(c), and Λ_(oc) and the actual values L_(d), L_(q), R,and Λ₀ thereof with voltage commands, the voltage command [v_(δγ)*] isdecided by a sum of the feedforward amount [F] and the feedback amount[B] of the following formula (4) using a deviation of the air-gap flux[λ_(δγc)] in the δc-γc rotating coordinate system from the command value[λ*], where a feedback gain Gλ (≠0), and a δ-axis λ_(δ)* and a γ-axiscomponent λ_(γ)* of the command value [λ*] are introduced.

$\begin{matrix}{{\begin{bmatrix}v_{\delta}^{*} \\v_{\gamma}^{*}\end{bmatrix} = {\lbrack F\rbrack + \lbrack B\rbrack}},{\lbrack F\rbrack = {{R_{c}\begin{bmatrix}i_{\delta\; c} \\i_{\gamma\; c}\end{bmatrix}} + {{\omega_{1}\begin{bmatrix}0 & {- 1} \\1 & 0\end{bmatrix}}\begin{bmatrix}\lambda_{\delta\; c} \\\lambda_{{\gamma\; c}\;}\end{bmatrix}}}},{\lbrack B\rbrack = {G_{\lambda}\left( {\begin{bmatrix}v_{\delta}^{*} \\v_{\gamma}^{*}\end{bmatrix} - \begin{bmatrix}\lambda_{\delta\; c} \\\lambda_{\gamma\; c}\end{bmatrix}} \right)}}} & (4)\end{matrix}$

The voltage command generation unit 1024 adds the feedforward amount [F]and the feedback amount [B] to obtain the voltage command [v_(δγ)*].

To generate the feedforward amount [F], the feedforward amountcalculation unit 1023 receives the air-gap flux [λ_(δγc)] and thecurrent [i_(δγc)] to obtain the feedforward amount [F] in accordancewith the formula (4). In other words, the feedforward amount [F] isobtained by the voltage equation in the steady state using the current[i_(δγc)], the setup value R_(c) of the resistance component, therotation angle velocity ω₁, and the air-gap flux [λ_(δγc)].

To generate the feedback amount [B], the feedback amount calculationunit 1022 receives the air-gap flux [λ_(δγc)] and the command value [λ*]thereof to calculate the feedback amount [B] in accordance with theformula (4). Specifically, the deviation of the air-gap flux [λ_(δγc)]from the command value [λ*] is multiplied by the feedback gain Gλ. Thefeedback gain Gλ can be stored in the feedback amount calculation unit1022.

Although the feedback gain Gλ is expressed in scalar quantity in theformula (4), it may be expressed as a non-zero matrix of two rows andtwo columns, which acts on the deviation of the air-gap flux.

Ideally, if the feedback amount [B] is zero, the δ-axis component λ_(δ)*and the γ-axis component λ_(γ)* respectively coincide with the δc-axiscomponent λ_(δc) and the γc-axis component λ_(γc), and the steady stateexpressed by the formula (3) is achieved by the control in the δc-γcrotating coordination system.

When the feedback control using such a feedback amount [B] has beenperformed appropriately, a discrepancy between the actual phase angle φand the estimated phase angle φ_(c) is small, and thus, an approximationcan be made such that there is no discrepancy between the rotation anglevelocity ω₁ and the command value ω*. In this case, a concept of thevoltage error [Δv_(δγ)*] being an error of a voltage command is newlyintroduced, and time variations in air-gap flux [λ_(δγc)] are also takeninto account, so that the following formula (5) holds.

$\begin{matrix}\left. \begin{matrix}{{\left\lbrack v_{\delta\gamma}^{*} \right\rbrack{R_{c}\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack}} + {\left( {{p\lbrack I\rbrack} + {\omega_{1}\lbrack J\rbrack}} \right)\left\lbrack \lambda_{{\delta\gamma}\; c} \right\rbrack} - \left\lbrack {\Delta\; v_{\delta\gamma}^{*}} \right\rbrack} \\{\left\lbrack {\Delta\; v_{\delta\gamma}^{*}} \right\rbrack \approx {{\left( {{e_{iI}\lbrack I\rbrack} + {e_{iJ}\lbrack J\rbrack}} \right)\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack} + {e_{\bigwedge}\begin{bmatrix}{\sin\;\phi_{c}} \\{\cos\;\phi_{c}}\end{bmatrix}} + {e_{v}\left\lbrack v_{\delta\gamma}^{*} \right\rbrack}}}\end{matrix} \right) & (5)\end{matrix}$

That is to say, the voltage error [Δv_(δγ)*] can be defined as a valueobtained by subtracting the voltage command [v_(δγ)*] from the voltagevalue (R_(c)[i_(δγc)]+(p[I]+ω₁[J])[λ_(δγc)]) obtained from the voltageequation on the electric motor 3. The voltage error [Δv_(δγ)*] can beapproximated by the second expression of the formula (5).

Coefficients e_(iI), e_(iJ), e_(Λ), and e_(v) vary within the range ofthe variation decided by the manufacturing tolerance or the range ofguarantee of the operating temperature of the electric motor 3,depending on the variations in the specifications of the electric motor3, the voltage supply source 2 and the detector (not shown) for acurrent [i_(x)] (or the voltage input to the voltage supply source 2),and the rotation angle velocity ω₁. The range in which the voltage error[Δv_(δγ)*] that is an error of the voltage command depends on thecurrent [i_(δγc)], the estimated phase angle φ_(c), and the voltagecommand [v_(δγ)*], as well as the ranges of variations of thecoefficients e_(iI), e_(iJ), e_(Λ), and e_(v).

That is to say, the voltage error [Δv_(δγ)*] is set by the variationrange decided by at least one of the current [i_(δγc)], the voltagecommand [v_(δγ)], the manufacturing tolerance or the range of guaranteeof the operating temperature of the electric motor 3 and the voltagesupply source 2, the manufacturing tolerance or the range of guaranteeof the operating temperature of the detector that detects the current[i_(δγc)] or the voltage v_(u), v_(v), v_(w), or the rotation anglevelocity (si.

In more detail, the variation range is set by at least one of the rangein which an error e_(iI)[I][i_(δγc)] that is parallel in phase with (isin phase with or in opposite phase with) the current [i_(δγc)] varies,the range in which an error e_(iJ)[J][i_(δγc)] that is orthogonal inphase to the current [i_(δγc)] varies, the range in which an errore_(Λ)[sin φ_(c) cos φ_(c)]^(t) that is orthogonal in phase to the fieldflux [Λ0] varies, or the range in which an error e_(v)[v_(δγ)*] that isparallel in phase with the voltage command [v_(δγ)*] varies.

Herein, the voltage error [Δv_(δγ)*] corresponds to the feedback amount[B] (more specifically, [Δv_(δγ)*]=−[B]). As described above, it ispremised that the voltage error [Δv_(δγ)*] has been subjected tofeedback control such that a discrepancy between the actual phase angleφ and the estimated phase angle φ_(c) is small. If the electric motor 3steps out in operation, this premise will not hold. In such a case,thus, the feedback amount [B] exceeds the range in which the voltageerror [Δv_(δγ)*] varies. In other words, when the feedback amount [B]exceeds the range in which the voltage error [Δv_(δγ)*] varies duringfeedback control, it is judged that the operation of the electric motor3 has stepped out.

That is to say, the range in which the voltage error [Δv_(δγ)*] variesserves as a threshold for the feedback amount [B] in judging thepresence or absence of step-out. To calculate the range in which thevoltage error [Δv_(δδ)*] varies in accordance with the right side of thesecond expression of the formula (5), the voltage error calculation unit1025 receives the estimated phase angle φ_(c), the current [i_(δγc)],and the voltage command [v_(δγ)*].

For example, the upper limits and the lower limits of the variationranges of the coefficients e_(iI), e_(iJ), e_(Λ), and e_(v), the current[i_(δγc)], the estimated phase angle φ_(c), and the voltage command[v_(δγ)*] are used to obtain maximum values and minimum values of therespective terms of the right side of the second expression of theformula (5). The voltage error [Δv_(δγ)*] in the employment of thecombination of the maximum values or the minimum values of therespective terms, which serves as a threshold, is compared with thefeedback amount [B]. The voltage error calculation unit 1025 maycalculate the coefficients e_(iI), e_(iJ), e_(Λ), and e_(v). In such acase, the voltage error calculation unit 1025 also receives the rotationangle velocity ω₁.

This can be understood as follows: the range in which the voltage error[Δv_(δγ)*] varies is set by the maximum value and/or the minimum valueof the voltage error [Δv_(δγ)*] in the combination of the upper limitand the lower limit of the variation range, the current [i_(δγc)], andthe voltage command.

In brief, a maximum absolute value that can be employed by the voltageerror [Δv_(δγ)*] shown in the right side of the formula (6) below may beemployed as the threshold of the absolute value of the feedback amount[B].

$\begin{matrix}{{\left\lbrack {\Delta\; v_{\delta\gamma}^{*}} \right\rbrack } \approx {{{\left( {{e_{iI}\lbrack I\rbrack} + {e_{iJ}\lbrack J\rbrack}} \right)\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack} + {e_{\bigwedge}\begin{bmatrix}{\sin\;\phi_{c}} \\{\cos\;\phi_{c}}\end{bmatrix}} + {e_{v}\left\lbrack v_{\delta\gamma}^{*} \right\rbrack}}}} & (6)\end{matrix}$

Alternatively, the formula (7) below holds, and thus, the rightmost sideof the formula (7) may be employed as a threshold. This is desirablefrom the viewpoint of reducing an amount of operations. The rightmostside does not include the estimated phase angle φ_(c), and thus can beemployed for a control system that does not output the estimated phaseangle φ_(c) by the magnetic flux calculation unit 10.

$\begin{matrix}\begin{matrix}{{\left\lbrack {\Delta\; v_{\delta\gamma}^{*}} \right\rbrack } \approx {{{\left( {{e_{iI}\lbrack I\rbrack} + {e_{iJ}\lbrack J\rbrack}} \right)\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack} + {e_{\bigwedge}\begin{bmatrix}{\sin\;\phi_{c}} \\{\cos\;\phi_{c}}\end{bmatrix}} + {e_{v}\left\lbrack v_{\delta\gamma}^{*} \right\rbrack}}}} \\{\leq {{{\left( {{e_{iI}\lbrack I\rbrack} + {e_{iJ}\lbrack J\rbrack}} \right)}{\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack }} + {e_{\bigwedge}} + {{e_{v}}{\left\lbrack v_{\delta\gamma}^{*} \right\rbrack }}}}\end{matrix} & (7)\end{matrix}$

During the constant speed operation, the rotation angle velocity ω₁ isconstant, and thus, |e_(iI)[I]+e_(iJ)[J]|, |e_(Λ)|, and |e_(v)| haveconstant values that will not change.

Alternatively, the feedback amount [B] and the voltage error [Av_(δγ)*]may be compared for each of the δc-axis component and the γc-axiscomponent. Or, they may be compared for only one of the components. Thisis desirable from the viewpoint of reducing an amount of operations. Forexample, in the formula (8), a maximum absolute value of the γc-axiscomponent Δv_(γ)* of the voltage error [Δv_(δγ)*], which is to becompared with the feedback amount [B] for the γc-axis component, isobtained. Thus, the rightmost side of the formula (8) may be comparedwith the feedback amount [B].Δv _(γ) *≈e _(iI) i _(γc) +e _(iJ) i _(δc) +e _(Λ)cos φ_(c) +e _(v) v_(γ) *≤|e _(iI) ∥i _(λc) |+|e _(iJ) ∥i _(δc) |+|e _(Λ) |+|e _(v) ∥v_(γ)*|  (8)

The determination unit 109 receives the voltage error [Δv_(δγ)*] andcompares the threshold described above or the voltage error [Δv_(δγ)*]with the feedback amount [B] to output the determination signal Z.Although the threshold described above is generated by, for example,determination unit 109, a block that obtains a threshold from thevoltage error [Δv_(δγ)*] may be provided separately in the voltagecommand calculation unit 102.

The voltage command output regulation unit 1026 receives thedetermination signal Z and the voltage command [v_(δγ)*]. The voltagecommand output regulation unit 1026 outputs the voltage command[v_(δγ)*] in cases except for the case in which the determination signalZ indicates step-out. When the determination signal Z indicatesstep-out, the voltage command output regulation unit 1026 outputs a stopcommand S in place of the voltage command [v_(δγ)*] to stop theoperation of the voltage supply source 2. This prevents driving of theelectric motor 3 that remains stepping out.

In this embodiment, a threshold is set on the basis of, for example, thecurrent [i_(δγc)] or the voltage command [v_(δγ)*], resulting in anappropriate threshold according to the operation state. This isdesirable from the viewpoints of increasing the accuracy of detectingstep-out and reducing false detections of step-out.

The threshold is set on the basis of the variation range decided by themanufacturing tolerance or the range of guarantee of the operationtemperature, reducing a need for experimentally deciding a threshold.This is desirable from the viewpoint of a greatly reduced man-hours indevelopment compared with the method of experimentally deciding athreshold.

Second Embodiment

A second embodiment will describe a technique for obtaining a feedbackamount [B] from a current deviation. Specifically, the feedback amount[B] is obtained in accordance with the formula (9), where a feedbackgain G_(i)(≠0) and a command value [i_(δγ)*]=[i_(δ)*i_(γ)*]^(t) of acurrent [i_(δγc)] are introduced. As in the first embodiment, thefeedback gain G_(i) may be a non-zero matrix of two rows and two columnsthat acts on a current deviation.

$\begin{matrix}{\lbrack B\rbrack = {G_{i}\left( {\begin{bmatrix}i_{\delta}^{*} \\i_{\gamma}^{*}\end{bmatrix} - \begin{bmatrix}i_{\delta\; c} \\i_{\gamma\; c}\end{bmatrix}} \right)}} & (9)\end{matrix}$

When the feedback amount [B] is obtained as described above, in place ofthe air-gap flux [λ_(δγc)] and the command value [λ_(δγ)*] thereof, thecurrent [i_(δγc)] and the command value [i_(δγ)*] thereof are input to afeedback amount calculation unit 1022.

The configuration of an electric motor controller 1 according to thisembodiment thus differs from the configuration of the electric motorcontroller 1 according to the first embodiment in that not the commandvalue [λ_(δγ)*] of the air-gap flux but the command value [i_(δγ)*] ofthe current is input to a voltage command calculation unit 102.

FIG. 4 is a block diagram illustrating the configuration of the voltagecommand calculation unit 102 in this embodiment.

Also in this embodiment, the voltage error [Δv_(δγ)*] can be decided asin the first embodiment. Additionally, the presence or absence ofstep-out can be determined by performing the process as in the firstembodiment.

It can be understood from the first embodiment and this embodiment thatthe feedback amount [B] is decided on the basis of a deviation of one ofthe current [i_(δγc)] or the air-gap flux [λ_(δγc)] from the commandvalue ([i_(δγ)*], [λ_(δγ)*]) thereof.

Third Embodiment

This embodiment will describe a case in which only feedback control isperformed without feedforward control. In this case, as expressed by theformula (10) below, the voltage command [v_(δγ)*] is equal to thefeedback amount [B].

$\begin{matrix}{\begin{bmatrix}v_{\delta}^{*} \\v_{\gamma}^{*}\end{bmatrix} = {\lbrack B\rbrack = {G_{\lambda}\left( {\begin{bmatrix}\lambda_{\delta}^{*} \\\lambda_{\gamma}^{*}\end{bmatrix} - \begin{bmatrix}\lambda_{\delta\; c} \\\lambda_{\gamma\; c}\end{bmatrix}} \right)}}} & (10)\end{matrix}$

FIG. 5 is a block diagram illustrating the configuration of a voltagecommand calculation unit 102 in this embodiment. The voltage commandgeneration unit 1024 described in the first embodiment and the secondembodiment is not required, and a feedback amount calculation unit 1022outputs a feedback amount [B] as the voltage command [v_(δγ)*].

Meanwhile, a feedforward amount calculation unit 1023 calculates afeedforward amount [F] as described in the first embodiment and thesecond embodiment. The voltage error [Δv_(δγ)*] employed in the firstembodiment and the second embodiment is corrected herein by subtractingthe feedforward amount [F] therefrom. In this embodiment, a symbol[Δv_(δγ)*] is used for a voltage error that is corrected by subtractingthe feedforward amount [F] therefrom.

That is to say, the voltage error [Δv_(δγ)*] is obtained from theformula (11) below in this embodiment.

$\begin{matrix}{\left\lbrack {\Delta\; v_{\delta\gamma}^{*}} \right\rbrack \approx {{\left( {{\left( {e_{iI} - R_{c}} \right)\lbrack I\rbrack} + {e_{iJ}\lbrack J\rbrack}} \right)\left\lbrack i_{{\delta\gamma}\; c} \right\rbrack} - {{\omega_{1}\lbrack J\rbrack}\left\lbrack \lambda_{{\delta\gamma}\; c} \right\rbrack} + {e_{\bigwedge}\begin{bmatrix}{\sin\;\phi_{c}} \\{\cos\;\phi_{c}}\end{bmatrix}} + {e_{v}\left\lbrack v_{\delta\gamma}^{*} \right\rbrack}}} & (11)\end{matrix}$

In the use of the feedback amount [B] itself as the voltage command[v_(δγ)*], the voltage error [Av_(δγ)*] decided by the formula (11) canbe used to determine the presence or absence of step-out as in the firstembodiment. This is apparent from the formulae (4) and (5).

The above reveals that also in this embodiment, the presence or absenceof step-out can be determined by performing the process as in the firstembodiment.

Needless to say, also in this embodiment, the product of the currentdeviation and the feedback gain G_(i) may be used as the feedback amount[B] as in the second embodiment. In that case, the feedback amount [B]obtained by the formula (9) is employed as the voltage command [v_(δγ)].As in the second embodiment, thus, in place of the air-gap flux[λ_(δγc)] and the command value [v_(δγ)*] thereof, the current [i_(δγc)]and the command value [i_(δγ)*] thereof are input to the feedback amountcalculation unit 1022.

As described above, on what the voltage error [Δv_(δγ)*] is baseddiffers depending on whether only the feedback amount [B] is used or thefeedforward amount [F] is also used to obtain the voltage command[v_(δγ)*]. In the case where the voltage command [v_(δγ)*] is not basedon the feedforward amount [F], as in this embodiment, the voltage error[Δv_(δγ)*] is set also on the basis of the feedforward amount [F]. Inthe case where the voltage command [v_(δγ)] is based on the feedforwardamount [F], as in the first and second embodiments, the voltage error[Δv_(δγ)*] is not based on the air-gap flux [λ_(δγc)] (see the secondexpression of the formula (5)).

The feedforward amount [F] may be set on the basis of a term of thevoltage equation except for one term. In this case, the range in whichthe voltage error [Δv_(δγ)*] varies is set also on the basis of the oneterm.

Variation 1

The coefficients e_(iI), e_(iJ), e_(Λ), and e_(v) can be affected by thevariations in the device constant of the electric motor 3, as well asvariations on circuit. For example, the coefficients e_(iI) and e_(iJ)are affected by the variations in the detector (not shown) that detectsa current [i_(x)], and the coefficient e_(v) is affected by thevariations in the detector (not shown) that detects a voltage input tothe voltage control type inverter (not shown) of the voltage supplysource 2 or a voltage v_(u), v_(v), v_(w) output therefrom. Note thatthe variations on the circuit, however, has a less effect on the voltageerror [Δv_(δγ)*] than the variations in the device constant of theelectric motor 3. If the variations on the circuit are disregarded,thus, step-out can actually be determined.

In the case where variations except for the variations in detector haveless effects on the voltage error [Δv_(δγ)*], step-out can be virtuallydetermined if such variations are disregarded.

Alternatively, for example, only the variations that affect the voltageerror [Δv_(δγ)*] most may be taken into account.

Variation 2

A maximum value of the voltage error [Δv_(δγ)*], which is a threshold tobe compared with the feedback amount [B], may be calculated in advanceon the worst conditions within the operation range assumable for theelectric motor 3 and may be stored.

In this case, the voltage error calculation unit 1025 has a small amountof operations, and the memory thereof can have a small capacity. Or, atable simply showing a threshold can replace the voltage errorcalculation unit 1025.

For example, thresholds are obtained in advance for respective rotationangle velocities and are stored as a table.

Needless to say, the threshold may be set to be greater than the maximumvalue of the voltage error [Δv_(δγ)*] in consideration of a margin.

Variation 3

An estimated phase angle φ_(c) is small, and thus can be approximated tozero to obtain a threshold.

A threshold may be obtained within an assumable range that can be takenby the estimated phase angle φ_(c) on the conditions on which nostep-out occurs. For example, in the operation without step-out withinthe range of the estimated phase angle φ_(c) of −90° to 90° (suchcontrol is employed in, for example, primary magnetic flux control),−1≤sin φ_(c)≤1 and 0≤cos φ_(c)≤1 are employed to obtain a threshold.

When the estimated phase angle φ_(c) is approximated to zero or −1≤sinφ_(c)≤1 and 0≤cos φ_(c)≤1 are employed to obtain a threshold, theestimated phase angle φ_(c) itself needs not to be obtained. In thecontrol that needs not to obtain the estimated phase angle φ_(c) exceptfor obtaining a threshold, an amount of operations for obtaining theestimated phase angle φ_(c) (see the formula (2)) can be reduced.

Obtaining a threshold within an assumable range that can be taken by theestimated phase angle φ_(c) on the conditions on which no step-outoccurs is advantageous in that an abnormality can be determined also inthe case of the operation range beyond expectation.

The various embodiments and variations above can be appropriatelycombined with each other unless their functions are impaired.

The block diagrams above are schematic, and the respective units can beconfigured as hardware or can be configured as a microcomputer(including a memory device) whose functions are implemented by software.Various procedures executed by the respective units or some or all ofthe means or functions implemented thereby may be implemented byhardware.

The microcomputer executes the respective process steps (in other words,a procedure) described in a program. The memory device above can beconstituted of one or a plurality of memory devices such as a ROM (ReadOnly Memory), a RAM (Random Access Memory), a rewritable nonvolatilememory (EPROM (Erasable Programmable ROM) or the like), and a hard diskunit. The memory device stores therein, for example, various types ofinformation and data, stores therein a program to be executed by themicrocomputer, and provides a work area for execution of the program. Itcan be understood that the microcomputer functions as various meanscorresponding to the respective process steps described in the programor that the microcomputer implements various functions corresponding tothe respective process steps.

While the invention has been shown and described in detail, theforegoing description is in all aspects illustrative and notrestrictive. It is therefore understood that numerous modifications andvariations can be devised without departing from the scope of theinvention.

The invention claimed is:
 1. A controller for an electric motor, saidcontroller controlling a synchronous motor, said controller comprising:an electric motor drive unit that applies a voltage based on a voltagecommand to said synchronous motor; a feedback amount calculation unitthat decides a feedback amount based on a deviation of a current flowingthrough said synchronous motor from a command value of said current or adeviation of an air-gap flux in said synchronous motor from a commandvalue of said air-gap flux; a voltage command generation unit thatgenerates said voltage command on the basis of said feedback amount; avoltage error calculation unit that calculates a range in which an errorbetween a voltage value based on a voltage equation of said synchronousmotor and said voltage command varies; and a determination unit thatdetermines an occurrence of an abnormality in said synchronous motorwhen said feedback amount deviates from the range in which said errorvaries, wherein said error is set on the basis of a variation rangedecided by at least one of said current, said voltage command, amanufacturing tolerance or a range of guarantee of an operatingtemperature of said synchronous motor, a manufacturing tolerance or arange of guarantee of an operating temperature of said electric motordrive unit, a manufacturing tolerance or a range of guarantee or anoperating temperature of a detector that detects said current or saidvoltage, or a rotation angle velocity of said synchronous motor.
 2. Thecontroller for an electric motor according to claim 1, wherein the rangein which said error varies is set on the basis of a variation rangedecided by at least one of a range in which an error that is parallel inphase with said current varies, a range in which an error that isorthogonal in phase to said current varies, a range in which an errorthat is orthogonal in phase to a field flux of said synchronous motorvaries, or a range in which an error that is parallel in phase with saidvoltage command varies.
 3. The controller for an electric motoraccording to claim 1, wherein the range in which said error varies isset by a maximum value and/or a minimum value of said error in acombination of an upper limit and a lower limit of said variation range,said current, and said voltage command.
 4. The controller for anelectric motor according to claim 2, wherein the range in which saiderror varies is set by a maximum value and/or a minimum value of saiderror in a combination of an upper limit and a lower limit of saidvariation range, said current, and said voltage command.
 5. A controllerfor an electric motor, said controller controlling a synchronous motor,said controller comprising: an electric motor drive unit that applies avoltage based on a voltage command to said synchronous motor; a feedbackamount calculation unit that decides a feedback amount based on adeviation of a current flowing through said synchronous motor from acommand value of said current or a deviation of an air-gap flux in saidsynchronous motor from a command value of said air-gap flux; a voltagecommand generation unit that generates said voltage command on the basisof said feedback amount; a voltage error calculation unit thatcalculates a range in which an error between a voltage value based on avoltage equation of said synchronous motor and said voltage commandvaries; and a determination unit that determines an occurrence of anabnormality in said synchronous motor when said feedback amount deviatesfrom the range in which said error varies, wherein the range in whichsaid error varies is set on the basis of a variation range decided by atleast one of a range in which an error that is parallel in phase withsaid current varies, a range in which an error that is orthogonal inphase to said current varies, a range in which an error that isorthogonal in phase to a field flux of said synchronous motor varies, ora range in which an error that is parallel in phase with said voltagecommand varies.
 6. The controller for an electric motor according toclaim 5, wherein the range in which said error varies is set by amaximum value and/or a minimum value of said error in a combination ofan upper limit and a lower limit of said variation range, said current,and said voltage command.
 7. The controller for an electric motoraccording to claim 1, wherein the range in which said error varies isfurther set also on the basis of one term of said voltage equation, saidcontroller further comprises a feedforward amount calculation unit thatdecides a feedforward amount based on a term of said voltage equationexcept for said one term, and said voltage command generation unitfurther generates said voltage command also on the basis of saidfeedforward amount.
 8. The controller for an electric motor according toclaim 1, further comprising a feedforward amount calculation unit thatdecides a feedforward amount based on said voltage equation, whereinsaid voltage command generation unit further generates said voltagecommand also on the basis of said feedforward amount.